CSCI 360 spring 2011

Syllabus

Author's website

Schedule:

Date
Topic Readings due Individual HW due Resources Team Projects
W 12 Jan
Introduction
OO Analysis & Design
F 14 Jan Form Teams
Team meetings
Chp 1, 2, 3 Install and explore Visual-Paradigm for UML Community Edition
www.agilealliance.com
TP1: In Class: Team Intro

TP2: Analyze and Design Software to control a Dual-Alarm AM/FM Clock Radio

M 17 Jan
Martin Luther King Holiday
W 19 Jan
UP Inception and Evolutionary Requirements
Use Cases
Chp 4, 5
Architecture as Hallucination
Unmasking Ethical Risks
HW1: 2+-page response that compares and contrasts Booch with Gotterbarn/Miller:
Email by 10 AM [last_first]_HW1.pdf
Ancient Greek Computer
more on Greek Computer
F 21 Jan Use Cases Chp 6 HW2: Identify and write in "casual format" at least 5 use cases for a simple answering machine.
Email by 10 AM [last_first]_HW2.pdf
Grady Booch Podcasts
M 24 Jan
Team Reports
Chp 7
TP2 Deliverable: Inception Documents: Vision, Use-Case enumeration with 2 use cases "fully dressed", supplemental specs, glossary
Submit [teamName]_TP2_D1.pdf
Email by 10 AM
W 26 Jan UP Elaboration I and Domain Models Chp 8, 9
F 28 Jan Domain Models HW3: Create a domain model (see 9.4 in text) for simple answering machine from HW2.
Email by 10 AM [last_first]_HW3.pdf
M 31 Jan Team Reports
Agile Domain Modeling Example TP2 Deliverable: Elaboration I Documents: all uses cases fully dressed and domain model.
Submit [teamName]_TP2_D2.pdf
Email by 10 AM
W 02 Feb System Sequence Diagrams Chp 10 Sequence Diagrams
F 04 Feb Operation Contracts Chp 11 HW4: Create system sequence diagrams and operation contracts for simple answering machine.
Email by 10 AM [last_first]_HW4.pdf
M 07 Feb Team Reports
TP2 Deliverable: Elaboration I Documents: System Sequence diagrams and operation contracts.
Submit [teamName]_TP2_D3.pdf
Email by 10 AM
W 09 Feb Logical Architecture Chp 12, 13
F 11 Feb T E S T # 1
M 14 Feb Object Design Chp 14 TP2 Deliverable: Revise D3 per lessons learned and comments;
Submit [teamName]_TP2_D3Rev.pdf
Email by 10 AM
T 15 Feb Alumni Symposium Register here
W 16 Feb UML Interaction Diagrams Chp 15
F 18 Feb UML Class Diagrams Chp 16 HW5: Patterns
M 21 Feb GRASP Chp 17 TP2 Deliverable: Explore your :System object (application layer) and identify objects needed to implement your operations; Suggest object responsibilities and collaborations with example sequence diagrams;
Submit [teamName]_TP2_D4.pdf
Email by 10 AM
W 23 Feb GRASP Chp 18
F 25 Feb GRASP
M 28 Feb Team Reports TP2 Deliverable: Complete the realization of your defined contracts with detailed sequence diagrams derived from your analysis of object responsibilities and collaborations; Keep in mind GRASP, especially Information Expert, Creator, Controller, and Low Coupling;
Submit [teamName]_TP2_D5.pdf
Email by 10 AM;
W 02 Mar Designing for Visibility Chp 19
F 04 Mar Mapping Designs to Code Chp 20 TP2 Deliverable: Revise D5 per lessons learned and comments;
Submit [teamName]_TP2_D5Rev.pdf
Email by 10 AM
M 07 Mar S P R I N G B R E A K
W 09 Mar
F 11 Mar
M 14 Mar Mapping Designs to Code Chp 20 HW6: Simple answering machine: complete the realization of your defined contracts with detailed sequence diagrams derived from your analysis of object responsibilities and collaborations; Keep in mind GRASP, especially Information Expert, Creator, Controller, and Low Coupling;
Email by 10 AM [last_first]_HW6.pdf
W 16 Mar Test-Driven Development and Refactoring Chp 21
F 18 Mar Team projects
M 21Mar Review Team Projects TP2 Deliverable: Produce Java classes to implement your design as specified in your sequence diagrams; use NetBeans to create project [teamnameAlarmClock] (no spaces) with Junit 4.0 tests; use test-driven development by first creating tests for each class and method; use package structure com.csci360.alarmclock;
Submit [teamName]_TP2_D6.ZIP.PIZ
Email by 10 AM
W 23 Mar UML Activity Diagrams and Modeling Chp 28
F 25 Mar POSSCON (no class) HW7: Simple answering machine: Produce Java classes to implement your design as specified in your sequence diagrams; use NetBeans to create project [lastFirstAnserwingMachine] (no spaces) with Junit 4.0 tests; use test-driven development by first creating tests for each class and method; use package structure com.csci360.answeringMachine;
Email by 10 AM [last_first]_HW7.ZIP.PIZ
TP2 Deliverable: Revise D6 per comments;
Submit [teamName]_TP2_D6.ZIP.PIZ
Email by 10 AM
M 28 Mar T E S T # 2
W 30 Mar State Machine Diagrams and Modeling On Visual Formalisms
Chp 29
F 01 Apr Team Projects HW8: Produce activity diagrams for: 1) modeling the process of buying groceries, starting with a shopping list; 2) the binary search algorithm;
Email by 10 AM [last_first]_HW8.PDF
M 04 Apr GRASP: More objects with Responsibilities Chp 25 TP2 Deliverable: Produce state machine models of the UI for the alarm clock based on your previously defined system operations;
Submit [teamName]_TP2_D7.PDF
Email by 10 AM
W 06 Apr Liskov Substitution Principle
Law of Demeter
SOLID
HW8R: Revise HW8;
Email by 10 AM [last_first]_HW8R.PDF
F 08 Apr Applying GoF Design Patterns Chp 26 HW9: Produce state machine models of the UI for the answering machine based on your previously defined system operations;
Email by 10 AM [last_first]_HW9.PDF
Student Evals start today
M 11 Apr Applying GoF Design Patterns (cont) Chp 26 TP2 Deliverable: REVISE D7;
Submit [teamName]_TP2_D7R.PDF
Email by 10 AM

TP2 Deliverable: Implement GUI within the package structure for the alarm clock based on your previously implemented system operations and state machine models;
Submit [teamName]_TP2_D8.ZIP.PIZ
Email by 10 AM

W 13 Apr Project reviews
F 15 Apr Software Architecture Document (SAD) Chp 39 HW10: Implement GUI within the package structure for the answering machine based on your previously implemented system operations and state machine models;
Email by 10 AM [last_first]_HW10.ZIP.PIZ
M 18 Apr Review Submit evaluation form in person in class TP2 Deliverable: Improve upon D8;
Submit [teamName]_TP2_D9.ZIP.PIZ
Email by 10 AM
W 20 Apr Presentations: UML, TeamRedundancyTeam, 5 Banditos TP2 Deliverable: Presentation;
Submit [teamName]_TP2_PRESENT.ZIP.PIZ
Email by 10 AM
F 22 Apr Presentations: Jackson 5, TheOrange, SnoozeStorm
M 25 Apr No Class
W 04 May F I N A L @ 08:00 AM